#ifndef FORM_LIVINGROOM_H
#define FORM_LIVINGROOM_H

#include <QWidget>
#include "mqtt/qmqtt.h"
#include "color.h"
#include "form_bedroom.h"
#include "form_scene.h"
#include "form_set.h"
#include <QJsonDocument>
#include <QJsonParseError>
#include <QJsonObject>
#include <QJsonValue>
#include <QJsonArray>

namespace Ui {
class Form_livingroom;
}

class Form_livingroom : public QWidget
{
    Q_OBJECT

public:
    explicit Form_livingroom(QWidget *parent = 0);
    ~Form_livingroom();
    void connectServer();
    void dataJsonDeserialization();//数据查询Json反序列化
    void controlJsonDeserialization();//控制协议Json反序列化
    QString modeJsonSerialization(int type_m);//模式修改Json序列化
    void modeJsonDeserialization();//模式修改Json反序列化
    //void keyJudge();//key值的判断

private slots:
    void doConnected();  //MQTT 连接成功
    void doSubscribed(const QString& topic, const quint8 qos);//订阅
    void doDataReceived(QMQTT::Message message);//接收数据
    //数据型槽函数
    void collectTemprature();
    void collectHumidity();
    void collectIll();
    //控制型槽函数
    void controlLight();
    void controlAlarm();
    void controlFan();
    //上报模式修改信号槽
    void clickedNoact();
    void clickedChange();
    void clickedTime();
    //界面切换信号槽
    void clickedLivingroomBtn();
    void clickedBedroomBtn();
    void clickedSceneBtn();
    void clickedSetBtn();

private:
    Ui::Form_livingroom *ui;
    QMQTT::Client *client;

};

#endif // FORM_LIVINGROOM_H
